package com.hzit.manager.client.factory;

import com.hzit.common.util.R;
import com.hzit.manager.client.UserClient;
import org.springframework.cloud.openfeign.FallbackFactory;
import org.springframework.stereotype.Component;

/**
 * 类名：
 * 作者：WF
 * 功能：使用熔断处理器工厂进行熔断处理
 */
@Component
public class UserFallbackFactory implements FallbackFactory<UserClient> {
	@Override
	public UserClient create(Throwable cause) {
		return new UserClient() {
			@Override
			public R findById() {
				return R.fail("{ 方法名：findById() }[ 使用fallbackFactory属性进行熔断处理  ]hzit-user服务己关闭！");
			}

			@Override
			public R findById2(Integer id) {
				return R.fail("{ 方法名：findById2() }[ 使用fallbackFactory属性进行熔断处理  ]hzit-user服务己关闭！");
			}

			@Override
			public R findById3(Integer id) {
				return R.fail("{ 方法名：findById3() }[ 使用fallbackFactory属性进行熔断处理  ]hzit-user服务己关闭！");
			}
		};
	}
}
